cmake_minimum_required(VERSION 3.27)
project(basic)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(CMAKE_OSX_ARCHITECTURES "x86_64")

# 解决控件提升时找不到头文件问题
INCLUDE_DIRECTORIES(
        ${PROJECT_SOURCE_DIR}
)

find_package(Qt5 COMPONENTS
        Core
        Gui
        Widgets
        REQUIRED)

add_executable(basic main.cpp
        main/mainwindow.cpp
        main/mainwindow.h
        main/mainwindow.ui
        main/opengl_1/AXBOpenGLWidget.h
        main/opengl_1/AXBOpenGLWidget.cpp
        main/opengl_2/OpenGLWidget2.cpp
        main/opengl_2/OpenGLWidget2.h
        main/opengl_3/OpenGLWidget3.cpp
        main/opengl_3/OpenGLWidget3.h
        main/opengl_4/OpenGLWidget4.cpp
        main/opengl_4/OpenGLWidget4.h
        main/opengl_5/OpenGLWidget5.cpp
        main/opengl_5/OpenGLWidget5.h
        main/opengl_6/OpenGLWidget6.cpp
        main/opengl_6/OpenGLWidget6.h
        main/opengl_7/OpenGLWidget7.cpp
        main/opengl_7/OpenGLWidget7.h
        main/opengl_8/OpenGLWidget8.cpp
        main/opengl_8/OpenGLWidget8.h
        main/opengl_9/OpenGLWidget9.cpp
        main/opengl_9/OpenGLWidget9.h
        main/opengl_10/OpenGLWidget10.cpp
        main/opengl_10/OpenGLWidget10.h
        main/opengl_11/OpenGLWidget11.cpp
        main/opengl_11/OpenGLWidget11.h
        main/opengl_12/OpenGLWidget12.cpp
        main/opengl_12/OpenGLWidget12.h
        main/opengl_13/OpenGLWidget13.cpp
        main/opengl_13/OpenGLWidget13.h
        main/opengl_14/OpenGLWidget14.cpp
        main/opengl_14/OpenGLWidget14.h
)

# 包含 Qt 资源文件
qt5_add_resources(RESOURCES
        main/opengl_5/shaders/res_5.qrc
        main/opengl_6/shaders/res_6.qrc
        main/opengl_7/shaders/res_7.qrc
        main/opengl_8/shaders/res_8.qrc
        main/opengl_9/shaders/res_9.qrc
        main/opengl_10/shaders/res_10.qrc
        main/opengl_11/shaders/res_11.qrc
        main/opengl_12/shaders/res_12.qrc
        main/opengl_13/shaders/res_13.qrc
        main/opengl_14/shaders/res_14.qrc
)

qt5_add_resources(RESOURCES2
        main/opengl_11/images/img_11.qrc
        main/opengl_12/images/img_12.qrc
        main/opengl_13/images/img_13.qrc
        main/opengl_14/images/img_14.qrc
)

# 将资源文件添加到可执行文件中
target_sources(basic PRIVATE ${RESOURCES} ${RESOURCES2})

target_link_libraries(basic
        Qt5::Core
        Qt5::Gui
        Qt5::Widgets
)

